package com.oi.test01.hw;

import com.oi.test01.entity.Student;

import java.lang.reflect.Constructor;

/**
 * @author bin
 * @date 2025 - 03 -17
 * 二、通过反射获取类的构造方法，如下所示：
 * public Student(String name,int age,Double weight)
 *
 * 使用反射实例化此类的对象，调用 show 方法，
 * show 方法把构造方法的四个信息打印输出。
 **/
public class MainTest02 {
    public static void main(String[] args) throws Exception {

        Class<Student> clazz = Student.class;

        Constructor<?> constructor =
                clazz.getConstructor(String.class, int.class, float.class);

        Object obj = constructor.newInstance("张三", 20, 65.5f);

        if(obj instanceof Student) {
            Student stu = (Student)obj ;
            stu.show("张三", 20, 65.5f);
        }

    }
}
